package com.zhiche.lisa.bms.pojo.vo.bill;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Author: liuanshun
 * @Description:
 * @Date: Create in 16:34 2018/9/6
 */
public class BillVO {
    private Long id;
    /**
     * 账单属性 (0正式/1差价/2调整/3单费用)
     */
    private Integer billProp;
    /**
     * 账单编号
     */
    private String billCode;
    /**
     * 对应账单编码
     */
    private String customerBillCode;
    /**
     * 对应账单id
     */
    private Long customerBillId;
    /**
     * 账单类型：10-应收账单、20-应付账单
     */
    private String billType;
    /**
     * 账单状态：10-未对账 20-已出账, 30-已确认, 40-已结算, 50-已取消
     */
    private String billStatus;
    /**
     * 应付账单属性：10-承运商、20-车队、30-司机
     */
    private Integer billProperty;
    /**
     * 账单总金额
     */
    private BigDecimal grossAmt;
    /**
     * 数量
     */
    private Integer num;
    /**
     * 付款方id
     */
    private Long payerId;
    /**
     * 付款方名称
     */
    private String payerName;
    /**
     * 收款方id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long payeeId;
    /**
     * 收款方名称
     */
    private String payeeName;
    /**
     * 账单版本
     */
    private Long billVersion;
    private Long proprietor;
    private Long tenantId;
    /**
     * 下单时间
     */
    private Date orderDate;
    /**
     * 创建时间
     */
    private Date gmtCreate;
    /**
     * 修改时间
     */
    private Date gmtModify;
    /**
     * 创建人
     */
    private Long creator;
    /**
     * 创建人
     */
    private String createUser;
    /**
     * 是否删除0\否 1\是
     */
    private Integer isDelete;
    /**
     * 客户是否确认；0-否 1-是 2-取消
     */
    private Integer isAffirm;

    /**
     * 账单状态名称
     */
    private String billStatuName;
    /**
     * 账单类型名称
     */
    private String billPropertyName;
    /**
     * 客户确认状态（是否）
     */
    private String isAffirmVal;

    public String getBillCode() {
        return billCode;
    }

    public void setBillCode(String billCode) {
        this.billCode = billCode;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Integer getBillProp() {
        return billProp;
    }

    public void setBillProp(Integer billProp) {
        this.billProp = billProp;
    }

    public String getCustomerBillCode() {
        return customerBillCode;
    }

    public void setCustomerBillCode(String customerBillCode) {
        this.customerBillCode = customerBillCode;
    }

    public Long getCustomerBillId() {
        return customerBillId;
    }

    public void setCustomerBillId(Long customerBillId) {
        this.customerBillId = customerBillId;
    }

    public String getBillType() {
        return billType;
    }

    public void setBillType(String billType) {
        this.billType = billType;
    }

    public String getBillStatus() {
        return billStatus;
    }

    public void setBillStatus(String billStatus) {
        this.billStatus = billStatus;
    }

    public Integer getBillProperty() {
        return billProperty;
    }

    public void setBillProperty(Integer billProperty) {
        this.billProperty = billProperty;
    }

    public BigDecimal getGrossAmt() {
        return grossAmt;
    }

    public void setGrossAmt(BigDecimal grossAmt) {
        this.grossAmt = grossAmt;
    }

    public Integer getNum() {
        return num;
    }

    public void setNum(Integer num) {
        this.num = num;
    }

    public Long getPayerId() {
        return payerId;
    }

    public void setPayerId(Long payerId) {
        this.payerId = payerId;
    }

    public String getPayerName() {
        return payerName;
    }

    public void setPayerName(String payerName) {
        this.payerName = payerName;
    }

    public Long getPayeeId() {
        return payeeId;
    }

    public void setPayeeId(Long payeeId) {
        this.payeeId = payeeId;
    }

    public String getPayeeName() {
        return payeeName;
    }

    public void setPayeeName(String payeeName) {
        this.payeeName = payeeName;
    }

    public Long getBillVersion() {
        return billVersion;
    }

    public void setBillVersion(Long billVersion) {
        this.billVersion = billVersion;
    }

    public Long getProprietor() {
        return proprietor;
    }

    public void setProprietor(Long proprietor) {
        this.proprietor = proprietor;
    }

    public Long getTenantId() {
        return tenantId;
    }

    public void setTenantId(Long tenantId) {
        this.tenantId = tenantId;
    }

    public Date getOrderDate() {
        return orderDate;
    }

    public void setOrderDate(Date orderDate) {
        this.orderDate = orderDate;
    }

    public Date getGmtCreate() {
        return gmtCreate;
    }

    public void setGmtCreate(Date gmtCreate) {
        this.gmtCreate = gmtCreate;
    }

    public Date getGmtModify() {
        return gmtModify;
    }

    public void setGmtModify(Date gmtModify) {
        this.gmtModify = gmtModify;
    }

    public Long getCreator() {
        return creator;
    }

    public void setCreator(Long creator) {
        this.creator = creator;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public Integer getIsDelete() {
        return isDelete;
    }

    public void setIsDelete(Integer isDelete) {
        this.isDelete = isDelete;
    }

    public Integer getIsAffirm() {
        return isAffirm;
    }

    public void setIsAffirm(Integer isAffirm) {
        this.isAffirm = isAffirm;
    }

    public String getBillStatuName() {
        return billStatuName;
    }

    public void setBillStatuName(String billStatuName) {
        this.billStatuName = billStatuName;
    }

    public String getBillPropertyName() {
        return billPropertyName;
    }

    public void setBillPropertyName(String billPropertyName) {
        this.billPropertyName = billPropertyName;
    }

    public String getIsAffirmVal() {
        return isAffirmVal;
    }

    public void setIsAffirmVal(String isAffirmVal) {
        this.isAffirmVal = isAffirmVal;
    }
}
